<HTML><HEAD><TITLE>pasm(+WAMCode, -Size, -BTPos, -Object)</TITLE>
</HEAD><BODY>[ <A HREF="index.html">library(asm)</A> | <A HREF="../../index.html">Reference Manual</A> | <A HREF="../../fullindex.html">Alphabetic Index</A> ]
<H1>pasm(+WAMCode, -Size, -BTPos, -Object)</H1>
Partially assemble WAMCode into an object format.


<DL>
<DT><EM>WAMCode</EM></DT>
<DD>A list of WAM instructions in the right format.
</DD>
<DT><EM>Size</EM></DT>
<DD>Variable or integer
</DD>
<DT><EM>BTPos</EM></DT>
<DD>Variable or integer
</DD>
<DT><EM>Object</EM></DT>
<DD>A list of object words in the right format.
</DD>
</DL>
<H2>Description</H2>
   Partially assemble the WAM instructions given WAMCode without loading it
   into the current session. Instead, an object format is generated. This
   object format can be loaded into an ECLiPSe session using the low level
   built-in store_pred/9. fcompile/1,2 uses this predicate to generate the
   object code for predicates. BTPos is the offset in words to the break/
   port table, which are the addresses to the positions in the code for the 
   predicate where a breakpoint can be set (body goals which are tracable).

<P>
   The partially assembled code consists of Object, which is a typed
   representation of the words that need to be stored into memory; and
   Size, the size in words that this object code will occupy in memory.

<P>

<H3>Modes and Determinism</H3><UL>
<LI>pasm(+, -, -, -) is semidet
</UL>
<H3>Fail Conditions</H3>
   If WAMCode is not in correct format.
<H3>Resatisfiable</H3>
   No.
<H2>See Also</H2>
<A HREF="../../lib/asm/asm-2.html">asm / 2</A>, <A HREF="../../lib/asm/asm-3.html">asm / 3</A>, <A HREF="../../lib/asm/disasm-2.html">disasm / 2</A>, <A HREF="../../lib/asm/disasm-3.html">disasm / 3</A>, <A HREF="../../lib/sicstus/index.html">sicstus : fcompile / 1</A>, <A HREF="../../lib/fcompile/fcompile-1.html">fcompile : fcompile / 1</A>, <A HREF="../../lib/fcompile/fcompile-2.html">fcompile : fcompile / 2</A>, <A HREF="../../lib/asm/portable_object_code-1.html">portable_object_code / 1</A>
</BODY></HTML>
